package com.example.schedule.ui

/**
 *Create by Fanketly on 2021/10/31
 *Gitee:https://gitee.com/fanketly
 */
//ViewStub标签使用注意点：
// 1，ViewStub标签不支持merge标签。因此这有可能导致加载出来的布局存在着多余的嵌套结构,开发中视情况而定。
// 2，ViewStub的inflate只能被调用一次,第二次调用会抛出异常。
// 3，虽然ViewStub是不占用任何空间的，但是每个布局都必须要指定layout_width和layout_height属性，否则运行就会报错。
//class 基础用法 : MavericksLauncherBaseFragment(R.layout.fragment_schedule) {
//    private val b: FragmentScheduleBinding by viewBinding()
//    private val scheduleViewModel: ScheduleViewModel by fragmentViewModel()
//    class ScheduleViewModel(initialState: Schedule) :
//        MvRxViewModel<Schedule>(initialState) {
//        fun getSchedule() = setState {
//            copy(id = id+1, content = content, time = time)
//        }
//    }
//    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
//        super.onViewCreated(view, savedInstanceState)
//        b.btnSchedule.setOnClickListener {
//            scheduleViewModel.getSchedule()
//        }
//    }
//
//    @SuppressLint("SetTextI18n")
//    override fun invalidate() {
//        //在此处使用最新状态更新您的视图。每当您的状态发生变化并且 viewLifecycleOwner 已启动时，都会调用此方法。
//        withState(scheduleViewModel) {
//            b.textView.text = "id:${it.id}${it.content}${it.time}"
//        }
//    }
//
//}